<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>冒泡排序</title>
	</head>
	<body>
		冒泡排序:
		1、比较相邻的两个元素，如果前一个比后一个大，则交换位置。
		2、比较完第一轮的时候，最后一个元素是最大的元素。
		3、这时候最后一个元素是最大的，所以最后一个元素就不需要参与比较大小。
	</body>
	<script type="text/javascript">
		function bubbleSort(arr) {
			const len = arr.length;
			for (var i = 0; i < len - 1; i++) {
				for (var j = 0; j < len - i - 1; j++) {
					// 相邻元素两两对比，元素交换，大的元素交换到后面
					if (arr[j] > arr[j + 1]) {
						var temp = arr[j];
						arr[j] = arr[j + 1];
						arr[j + 1] = temp;
					}
				}
			}
			return arr;
		}

		// 内部用了es6语法
		function bubbleSort(arr) {
			const len = arr.length || '';
			if (!len || len <= 0) return;
			for (let i = 0; i < len - 1; i++) {
				for (let j = 0; j < len - i - 1; j++) {
					if (arr[j] > arr[j + 1]) {
						[arr[j], arr[j + 1]] = [arr[j + 1], arr[j]]
					}
				}
			}
			return arr
		}

		//举个数组
		const myArr = [20, 18, 27, 19, 35];
		//使用函数
		console.log(bubbleSort(myArr))
	</script>
</html>
